package com.itheima.tlias.controller;

import com.itheima.tlias.common.Result;
import com.itheima.tlias.pojo.Emp;
import com.itheima.tlias.service.EmpService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

/**
 * 登录功能
 * @author
 * @version 1.0.1
 * @date 2023-04-10 14:51:21
 */
@RestController
//用来记录日志的注解@Slf4j
@Slf4j
public class UserController {

    @Autowired
    private EmpService empService;
    //请求参数是POST类型
    @PostMapping("/login")
    //参数是一个json格式的参数使用@RequestBody分装到对象中
    //接受的是username 和 password 所以可以直接使用员工实体类(Emp)来接收
    public Result login(@RequestBody Emp emp){
        //输出日志
        log.warn("员工登录:{}", emp);
        //登录业务
        String jwt = empService.login(emp);
        //登录成功，就生成令牌，下发令牌
        //登录失败返错误信息
        log.warn("jwt令牌 :{}", jwt);
        return Result.success(jwt);
    }
}
